package com.example.leetcode.prcatice;

import java.util.HashSet;
import java.util.Set;

/**
 * 给你一个偶数长度的字符串 s 。将其拆分成长度相同的两半，前一半为 a ，后一半为 b 。
 *
 * 两个字符串 相似 的前提是它们都含有相同数目的元音（'a'，'e'，'i'，'o'，'u'，'A'，'E'，'I'，'O'，'U'）。注意，s 可能同时含有大写和小写字母。
 *
 * 如果 a 和 b 相似，返回 true ；否则，返回 false 。
 *
 * 来源：力扣（LeetCode）
 * 链接：https://leetcode.cn/problems/determine-if-string-halves-are-alike
 * 著作权归领扣网络所有。商业转载请联系官方授权，非商业转载请注明出处。
 */
public class Test1704 {



    public boolean halvesAreAlike(String s) {
        char[] c = {'a','e','i','o','u','A','E','I','O','U'};
        Set<Character> set = new HashSet<>();
        for (char c1:c) {
            set.add(c1);
        }
        int len = s.length();
        int a = 0;
        int b = 0;
        for (int i = 0;i<len/2;i++) {
            if (set.contains(s.charAt(i))){
                a++;
            }
            if (set.contains(s.charAt(i+ len/2))) {
                b++;
            }
        }
        return a==b;
    }
}
